import axios  from "axios";
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'

//创建一个axios的实例
const request = axios.create({
    baseURL:'/api1',
    timeout:10000
})
//添加请求拦截器
request.interceptors.request.use(function(config){
    NProgress.start()
    // //权限控制
    const token = localStorage.getItem('user_token');
    config.headers.token = token

    return config
},function(error){
    NProgress.done()
    return Promise.reject(error)
})
//添加响应连接器
request.interceptors.response.use(function(response){
    NProgress.done()
//只对符合我们成功逻辑的处理，否则都报异常(如果都是20000则就是报错)
    if(response.data.code === 20000){
        return Promise.reject({
            message: response.data.msg,
            //加入isLogin属性，用来是否跳转路由
            isLogin: false
        })
        
    }
    if(response.data.code !== 10000){
        return Promise.reject({
            message:response.data.msg,
            isLogin:true
        })
    }
    return response.data.data
},function(error){
    NProgress.done()
    return Promise.reject(error)
})

export default request